package com.douziit.meilianoa.entity;


import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;

import java.io.Serializable;
import java.util.Date;

/**
 * 项目信息表
 * @author ChenBiao
 * @since 2020-10-15
 */
@Data
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
public class ProjectInfo implements Serializable {

    private static final long serialVersionUID= 1L;

    @TableId(value = "id",type = IdType.AUTO)
    private Integer id;

    /**
     * 项目编号
     */
    @TableField("project_no")
    private String projectNo;

    /**
     * 项目名称
     */
    @TableField("name")
    private String name;

    /**
     * 客户id
     */
    @TableField("customer_id")
    private Integer customerId;

    /**
     * 客户项目编号
     */
    @TableField("customer_pro_no")
    private String customerProNo;

    /**
     * 联系人id
     */
    @TableField("contact_id")
    private Integer contactId;

    /**
     * 城市
     */
    @TableField("city")
    private String city;

    /**
     * 执行方式ID
     */
    @TableField("excute_type_id")
    private Integer excuteTypeId;

    /**
     * 主样本量
     */
    @TableField("main_sample_size")
    private Integer mainSampleSize;

    /**
     * 主样本量备注
     */
    @TableField("main_remark")
    private String mainRemark;

    /**
     * 样本量备
     */
    @TableField("auxiliary_sample_size")
    private Integer auxiliarySampleSize;

    /**
     * 样本量备备注
     */
    @TableField("auxiliary_remark")
    private String auxiliaryRemark;

    /**
     * 计划开始时间
     */
    @TableField("start_time")
    private Date startTime;

    /**
     * 计划结束时间
     */
    @TableField("end_time")
    private Date endTime;

    /**
     * 主控督导id
     */
    @TableField("account_id")
    private Integer accountId;

    /**
     * 协同督导id
     */
    @TableField("auxiliary_account_id")
    private Integer auxiliaryAccountId;

    /**
     * 主控督导所占比例
     */
    @TableField("account_rate")
    private double accountRate;

    /**
     * 项目费用
     */
    @TableField("amount")
    private double amount;

    /**
     * '0：待申请 1：待审批预算 2：预算未通过 3：待申请报销  4：待审批报销 5：已报销 6：报销未通过',
     * 默认 0
     */
    @TableField("status")
    private Integer status;

    /**
     * 客户评价id
     */
    @TableField("project_evalution_id")
    private Integer projectEvalutionId;

    /**
     * 预算未通过原因
     */
    @TableField("budget_reason")
    private String budgetReason;

    /**
     * 报销未通过原因
     */
    @TableField("reimbursement_reason")
    private String reimbursementReason;

    /**
     * 创建者id  关联用户表
     */
    @TableField("creator_id")
    private Integer creatorId;
}
